In recent years, multimedia transmission has become increasingly popular. Various forms of data transmission include unicast, multicast, and broadcast. In unicast transmission, data (e.g., in the form of Internet Protocol (IP) packets) is sent to a single network destination identified by a unique IP address. Certain network applications which are mass-distributed are too costly to be conducted with unicast transmission since each logical network connection consumes computing resources on the sending host and requires its own separate network bandwidth for transmission. Such applications include streaming multimedia of many forms, where audio and video signals are captured, compresses and transmitted to a group of receivers but on an individual basis. For example, internet radio stations using unicast connections may have high bandwidth costs.
Instead of using a set of point-to-point connections between the participating nodes, broadcasting and multicasting can be used for distribution of multimedia data to any number of receivers (e.g., destination computing devices). Broadcasting refers to transmitting data that is received by every device on the network.
Multicasting is the delivery of a message or data to a group of destination computing devices simultaneously in a single transmission from a source such as a multimedia server. Multicasting is a technique for one-to-many communication over an IP infrastructure in a network. It scales to a larger receiver population by not requiring prior knowledge of who or how many receivers there are. Multicasting uses network infrastructure efficiently by requiring the source to send a packet only once, even if it needs to be delivered to a large number of receivers. For example, in Internet Protocol Television (IPTV), data for television services is multicast using the Internet protocol suite over a packet-switched network such as the Internet, instead of being delivered through traditional terrestrial, satellite signal, and cable television formats.
Different transport layer protocols can be used to transmit multimedia content. For example, Transmission Control Protocol (TCP) is one of the two original components of the Internet Protocol Suite, complementing the Internet Protocol (IP). Accordingly, the entire suite is commonly referred to as TCP/IP. TCP provides delivery of a stream of octets from a program on a source (e.g., server) to a destination (e.g., client program or wireless device). TCP is the protocol used by major Internet applications such as the World Wide Web, email, remote administration and file transfer. Other applications, which do not require reliable data stream service, may use the User Datagram Protocol (UDP), which provides a datagram service that emphasizes reduced latency over reliability. By its nature, UDP is not reliable in that messages are frequently lost or delivered out of order. UDP uses a simple transmission model with a minimum reliance on protocol. For example, it has no handshaking dialogues, and thus exposes the user's program to any unreliability of the underlying network protocol. As this is normally IP multimedia over unreliable network transport, there is no guarantee of delivery, ordering, or duplicate protection.
The flexibility in joining and leaving a group provided by multicasting, although making variable membership easier to handle, is not without consequences. The simple transmission model and the unreliability of the protocol that is typically used in multicast can make it difficult to measure the amount of data received by a wireless device. However, billing/payment for many wireless data plans is based in whole or in part on the amount of data communicated to and from the wireless device.
For example, a user of a wireless device may no longer wish to receive content from a multimedia server. Accordingly, the user may attempt to leave an audio-cast or a video-cast by shutting down an application on the wireless device that is configured to receive the content from the multimedia server. Alternatively, the wireless device may simply run out of battery. However, a gateway server that is between the wireless device and the multimedia server may continue to receive data from the multimedia server and attempt to provide this data to the wireless device. As the gateway server is typically employed by the network to determine data usage of the wireless device (based on transmission, whether or not successfully received), the network operator continues charging the user account of the wireless device for transport of data for the multimedia service through the wireless network. Currently, there is no reliable system and method to prevent a user account of the wireless device to continue to be tolled for broadcast and/or multicast data that is being streamed from the multimedia server intended for delivery to the wireless device even though that device may have stopped receiving the data via a unicast wireless network communication channel.